package com.ccys.db.vo.member;

import cn.hutool.core.util.ObjectUtil;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.List;

@Data
@ApiModel("激活账号模型VO")
@EqualsAndHashCode(callSuper = false)
public class ActivateAccountVO implements Serializable {


        /** 访问令牌 */
        @JsonProperty("access_token")
        private String accessToken;

        @JsonProperty("member_id")
        private String memberId;

        @JsonProperty("code")
        private String code;

        /** 名字 */
        @JsonProperty("first_name")
        private String firstName;

        /** 姓氏 */
        @JsonProperty("last_name")
        private String lastName;

        /** 邮箱 */
        @JsonProperty("email")
        private String email;

        /** 身份证/准证号码 */
        @JsonProperty("nric_fin")
        private String nricFin;

        /** 电话号码 */
        @JsonProperty("phone")
        private String phone;

        /** 家庭地址 */
        @JsonProperty("home_address")
        private String homeAddress;

        /** 工作地址 */
        @JsonProperty("office_address")
        private String officeAddress;

        /**
         * 0 女 1 男 -1 未知
         * female 女,male 男，unknown 未知
         */
        @JsonProperty("gender")
        private String gender;

        /** 性别，数据库存储的数字？？ */
        @JsonProperty("gender_db")
        private int genderDb;

        /** 出生日期 */
        @JsonProperty("date_of_birth")
        private String dateOfBirth;

        /** 年龄 */
        @JsonProperty("age")
        private String age;

        /** 注册日期 */
        @JsonProperty("reg_date")
        private String regDate;

        /** 重购次数？？ */
        @JsonProperty("rebuy_count")
        private int rebuyCount;

        /** 居住国家 */
        @JsonProperty("country_of_residence")
        private String countryOfResidence;

        /** 语言代码？？ */
        @JsonProperty("language_code")
        private String languageCode;

        /** SingPass UUID */
        @JsonProperty("singpass_uuid")
        private String singpassUuid;

        /** 国籍 */
        @JsonProperty("nationality")
        private String nationality;

        /** 电话区号 */
        @JsonProperty("phone_country_id")
        private int phoneCountryId;

        /** 紧急联系人电话区号 */
        @JsonProperty("emergency_phone_country_id")
        private String emergencyPhoneCountryId;

        /** 个人资料照片?? */
        @JsonProperty("profile_photo")
        private String profilePhoto;

        /** 身份证正面照片 */
        @JsonProperty("front_identification_card_photo")
        private String frontIdentificationCardPhoto;

        /** 身份证反面照片 */
        @JsonProperty("back_identification_card_photo")
        private String backIdentificationCardPhoto;

        /** 护照照片 */
        @JsonProperty("passport_photo")
        private String passportPhoto;

        /** 驾照正面照片 */
        @JsonProperty("front_of_driving_license_photo")
        private String frontOfDrivingLicensePhoto;

        /** 驾照反面照片 */
        @JsonProperty("back_of_driving_license_photo")
        private String backOfDrivingLicensePhoto;

        /** 孩子照片 */
        @JsonProperty("child_photo")
        private String childPhoto;

        /** 类型ID?? */
        @JsonProperty("type_id")
        private String typeId;

        /** 紧急联系人名字 */
        @JsonProperty("emergency_first_name")
        private String emergencyFirstName;

        /** 紧急联系人姓氏 */
        @JsonProperty("emergency_last_name")
        private String emergencyLastName;

        /** 紧急联系人电话 */
        @JsonProperty("emergency_phone")
        private String emergencyPhone;

        /** 紧急联系人关系 */
        @JsonProperty("emergency_relationship")
        private String emergencyRelationship;

        /** 紧急联系人关系ID */
        @JsonProperty("emergency_relationship_id")
        private Object emergencyRelationshipId;

        /** 是否请求更新联系信息 */
        @JsonProperty("request_update_contact_info")
        private boolean requestUpdateContactInfo;

        /** 是否请求激活账号?? */
        @JsonProperty("request_activate_account")
        private boolean requestActivateAccount;

        /** 是否是已经满21岁的孩子 */
        @JsonProperty("for_child_that_turned_21")
        private boolean forChildThatTurned21;

        /** G6PD缺陷 */
        @JsonProperty("g6pd")
        private Object g6pd;

        /** 是否怀孕 */
        @JsonProperty("pregnant")
        private Object pregnant;

        /** 子女 */
        @JsonProperty("childs")
        private Object childs;

        /** 过敏症状 */
        @JsonProperty("allergies")
        private List<String> allergies;

        /** 药物反应?? */
        @JsonProperty("medication_reactions")
        private Object medicationReactions;

        /** 个人咨询费用?? */
        @JsonProperty("individual_consult_fee")
        private double individualConsultFee;

        /** 企业 */
        @JsonProperty("corporate")
        private Object corporate;

        /** 订阅 */
        @JsonProperty("subscription")
        private Object subscription;

        /** 提醒 */
        @JsonProperty("reminder")
        private ReminderVO reminder;

        /** 咨询地址 */
        @JsonProperty("consult_address")
        private ConsultAddressVO consultAddress;

        /** 待处理的身份证号码 */
        @JsonProperty("pending_nric")
        private String pendingNric;

        /** 会员咨询档案 */
        @JsonProperty("member_consult_profiles")
        private List memberConsultProfiles;


}